#===istalismanplugin===
# -*- coding: utf-8 -*-

# $Revision: 56 $
# $Author: rchiganov@gmail.com $
# $Date: 2013-09-23 10:14:38 +0000 (Mon, 23 Sep 2013) $

#---------------------------------------------------------------------------------------------------

import os
import time

#---------------------------------------------------------------------------------------------------

def botup_run ( ptype, psource, pparameters ):
	lanswer = u''
	if INFO['start']:
		luptime = int(time.time() - INFO['start'])
		lanswer  = u'\nСтатистика работы бота:'
		lanswer += u'\n• Рабочая сессия %s' % timeElapsed(luptime)
		lanswer += u'\n• Получила %s сообщений, выполнила %s команд' % ( str(INFO['msg']), str(INFO['cmd']) )
		lanswer += u'\n• Обработала %s презенсов и %s iq-запросов' % ( str(INFO['prs']), str(INFO['iq']) )

		if os.name == 'posix':
			try:
				lpr = os.popen('ps -o rss -p %s' % os.getpid())
				lpr.readline()
				lmem = lpr.readline().strip()
			except:
				pass
			finally:
				lpr.close()

			if lmem:
				lanswer += u'\n• Использую %.2f МБ оперативной памяти' % ( float(lmem) / 1024 )

		( luser, lsystem, lqqq, lwww, leee, ) = os.times()
		lanswer += u'\n• Создала %s потоков, %s из них активно' % ( INFO['thr'], threading.activeCount() )
		lanswer += u'\n• Потратила %.2f секунд процессора, %.2f секунд системного времени' % ( luser, lsystem )
		lanswer += u'\n• Итог: %.2f секунд общесистемного времени' % ( luser + lsystem )
		lanswer += u'\n\nУффф... Устала... Хочу в отпуск и на море... *BEACH*'

	else:
		lanswer = u'Кажется я выключена... *SCRATCH*'
	reply(ptype, psource, lanswer)

#---------------------------------------------------------------------------------------------------

register_command_handler(botup_run, 'ботап', [ 'инфо', 'админ', 'все' ], 20, 'Показывает сколько времени бот работает без падений.', 'ботап', [ 'ботап' ])

#---------------------------------------------------------------------------------------------------
